<template>
  <div>
    <Row class="header" type="flex" justify="start">
      <Col span="24">
        <Icon class="icon" type="ios-podium-outline"/>
        <span class="title">2月12日零时以来关注地区来沈人员情况（全市总量）</span>
      </Col>
    </Row>
    <br>
    <div id="focusAreaTotal" :style="{ width: width + 'px', height: height + 'px'}"></div>
  </div>
</template>

<script>
import echarts from 'echarts'
import { findProvinceAllAreaList } from '@/api/yi-qing-fang-kong'
import { sortByProp } from '@/libs/tools'
// import mockData from './mockData'

export default {
  name: 'focusAreaTotalEchart',
  data () {
    return {
      chartData: []
    }
  },
  props: {
    width: {
      type: Number,
      default: () => {
        return 500
      }
    },
    height: {
      type: Number,
      default: () => {
        return 300
      }
    }
  },
  mounted () {
    this.chart()
  },
  methods: {
    chart () {
      findProvinceAllAreaList().then(ret => {
        if (ret.data.errcode === 0) {
          let arr = ret.data.data
          this.chartData = []
          const sort = ['和平区', '沈河区', '铁西区', '皇姑区', '大东区', '浑南区', '于洪区', '沈北新区', '苏家屯区', '辽中区', '新民市', '法库县', '康平县']
          arr.forEach(item => {
            let sortId = sort.indexOf(item.area)
            item.sortId = sortId
          })
          this.chartData = arr.sort(sortByProp('sortId'))
          let option = {
            title: {
              text: ''
            },
            textStyle: {
              color: '#bababa'
            },
            legend: {
            // left: '20%',
            // itemHeight: 10,
            // padding: [0, 0, 10, 0]
            },
            tooltip: {
              trigger: 'axis',
              backgroundColor: 'rgba(50,50,50,0.6)',
              axisPointer: { // 坐标轴指示器，坐标轴触发有效
                type: 'shadow' // 默认为直线，可选为：'line' | 'shadow'
              }
            },
            dataset: {
              dimensions: ['area', 'hlj', 'heb', 'hn', 'xy', 'zj', 'wz', 'sd', 'hb', 'jl', 'bj', 'gd'],
              source: []
            },
            yAxis: {
              name: '单位：人',
              type: 'value',
              axisLine: {
                lineStyle: {
                  color: '#bababa' // 轴及其文字颜色
                }
              }
            },
            xAxis: {
              type: 'category',
              axisLabel: {
                interval: 0,
                rotate: 0
              },
              axisLine: {
                lineStyle: {
                  color: '#bababa' // 轴及其文字颜色
                }
              }
            },
            series: [
              {
                name: '黑龙江省',
                type: 'bar',
                label: {
                  normal: {
                  // show: true,
                  // position: 'inside',
                  // color: ['#fff'],
                  // formatter: function (params) {
                  //   if (params.value.totalP > 0) {
                  //     return params.value.totalP
                  //   } else {
                  //     return ''
                  //   }
                  // }
                  }
                },
                itemStyle: {
                // 通常情况下：
                  normal: {
                  // color: ['#61A0A9']
                  },
                  // 鼠标悬停时：
                  emphasis: {
                    shadowBlur: 10,
                    shadowOffsetX: 0,
                    shadowColor: 'rgba(0, 0, 0, 0.5)'
                  }
                }
              },
              {
                name: '哈尔滨市',
                type: 'bar',
                label: {
                  normal: {
                  // show: true,
                  // position: 'top',
                  // color: ['#fff'],
                  // formatter: function (params) {
                  //   if (params.value.dailyP > 0) {
                  //     return `当日新增\n` + params.value.dailyP
                  //   } else {
                  //     return ''
                  //   }
                  // }
                  }
                },
                itemStyle: {
                // 通常情况下：
                  normal: {
                  // color: ['#C75258']
                  },
                  // 鼠标悬停时：
                  emphasis: {
                    shadowBlur: 10,
                    shadowOffsetX: 0,
                    shadowColor: 'rgba(0, 0, 0, 0.5)'
                  }
                }
              },
              {
                name: '河南省',
                type: 'bar',
                label: {
                  normal: {
                  // show: true,
                  // position: 'top',
                  // color: ['#fff'],
                  // formatter: function (params) {
                  //   if (params.value.dailyP > 0) {
                  //     return `当日新增\n` + params.value.dailyP
                  //   } else {
                  //     return ''
                  //   }
                  // }
                  }
                },
                itemStyle: {
                // 通常情况下：
                  normal: {
                  // color: ['#C75258']
                  },
                  // 鼠标悬停时：
                  emphasis: {
                    shadowBlur: 10,
                    shadowOffsetX: 0,
                    shadowColor: 'rgba(0, 0, 0, 0.5)'
                  }
                }
              },
              {
                name: '信阳市',
                type: 'bar',
                label: {
                  normal: {
                  // show: true,
                  // position: 'top',
                  // color: ['#fff'],
                  // formatter: function (params) {
                  //   if (params.value.dailyP > 0) {
                  //     return `当日新增\n` + params.value.dailyP
                  //   } else {
                  //     return ''
                  //   }
                  // }
                  }
                },
                itemStyle: {
                // 通常情况下：
                  normal: {
                  // color: ['#C75258']
                  },
                  // 鼠标悬停时：
                  emphasis: {
                    shadowBlur: 10,
                    shadowOffsetX: 0,
                    shadowColor: 'rgba(0, 0, 0, 0.5)'
                  }
                }
              },
              {
                name: '浙江省',
                type: 'bar',
                label: {
                  normal: {
                  // show: true,
                  // position: 'top',
                  // color: ['#fff'],
                  // formatter: function (params) {
                  //   if (params.value.dailyP > 0) {
                  //     return `当日新增\n` + params.value.dailyP
                  //   } else {
                  //     return ''
                  //   }
                  // }
                  }
                },
                itemStyle: {
                // 通常情况下：
                  normal: {
                  // color: ['#C75258']
                  },
                  // 鼠标悬停时：
                  emphasis: {
                    shadowBlur: 10,
                    shadowOffsetX: 0,
                    shadowColor: 'rgba(0, 0, 0, 0.5)'
                  }
                }
              },
              {
                name: '温州市',
                type: 'bar',
                label: {
                  normal: {
                  // show: true,
                  // position: 'top',
                  // color: ['#fff'],
                  // formatter: function (params) {
                  //   if (params.value.dailyP > 0) {
                  //     return `当日新增\n` + params.value.dailyP
                  //   } else {
                  //     return ''
                  //   }
                  // }
                  }
                },
                itemStyle: {
                // 通常情况下：
                  normal: {
                  // color: ['#C75258']
                  },
                  // 鼠标悬停时：
                  emphasis: {
                    shadowBlur: 10,
                    shadowOffsetX: 0,
                    shadowColor: 'rgba(0, 0, 0, 0.5)'
                  }
                }
              },
              {
                name: '山东省',
                type: 'bar',
                label: {
                  normal: {
                  // show: true,
                  // position: 'top',
                  // color: ['#fff'],
                  // formatter: function (params) {
                  //   if (params.value.dailyP > 0) {
                  //     return `当日新增\n` + params.value.dailyP
                  //   } else {
                  //     return ''
                  //   }
                  // }
                  }
                },
                itemStyle: {
                // 通常情况下：
                  normal: {
                  // color: ['#C75258']
                  },
                  // 鼠标悬停时：
                  emphasis: {
                    shadowBlur: 10,
                    shadowOffsetX: 0,
                    shadowColor: 'rgba(0, 0, 0, 0.5)'
                  }
                }
              },
              {
                name: '河北省',
                type: 'bar',
                label: {
                  normal: {
                  // show: true,
                  // position: 'top',
                  // color: ['#fff'],
                  // formatter: function (params) {
                  //   if (params.value.dailyP > 0) {
                  //     return `当日新增\n` + params.value.dailyP
                  //   } else {
                  //     return ''
                  //   }
                  // }
                  }
                },
                itemStyle: {
                // 通常情况下：
                  normal: {
                  // color: ['#C75258']
                  },
                  // 鼠标悬停时：
                  emphasis: {
                    shadowBlur: 10,
                    shadowOffsetX: 0,
                    shadowColor: 'rgba(0, 0, 0, 0.5)'
                  }
                }
              },
              {
                name: '吉林省',
                type: 'bar',
                label: {
                  normal: {
                  // show: true,
                  // position: 'top',
                  // color: ['#fff'],
                  // formatter: function (params) {
                  //   if (params.value.dailyP > 0) {
                  //     return `当日新增\n` + params.value.dailyP
                  //   } else {
                  //     return ''
                  //   }
                  // }
                  }
                },
                itemStyle: {
                // 通常情况下：
                  normal: {
                  // color: ['#C75258']
                  },
                  // 鼠标悬停时：
                  emphasis: {
                    shadowBlur: 10,
                    shadowOffsetX: 0,
                    shadowColor: 'rgba(0, 0, 0, 0.5)'
                  }
                }
              },
              {
                name: '北京市',
                type: 'bar',
                label: {
                  normal: {
                  // show: true,
                  // position: 'top',
                  // color: ['#fff'],
                  // formatter: function (params) {
                  //   if (params.value.dailyP > 0) {
                  //     return `当日新增\n` + params.value.dailyP
                  //   } else {
                  //     return ''
                  //   }
                  // }
                  }
                },
                itemStyle: {
                // 通常情况下：
                  normal: {
                  // color: ['#C75258']
                  },
                  // 鼠标悬停时：
                  emphasis: {
                    shadowBlur: 10,
                    shadowOffsetX: 0,
                    shadowColor: 'rgba(0, 0, 0, 0.5)'
                  }
                }
              },
              {
                name: '广东省',
                type: 'bar',
                label: {
                  normal: {
                  // show: true,
                  // position: 'top',
                  // color: ['#fff'],
                  // formatter: function (params) {
                  //   if (params.value.dailyP > 0) {
                  //     return `当日新增\n` + params.value.dailyP
                  //   } else {
                  //     return ''
                  //   }
                  // }
                  }
                },
                itemStyle: {
                // 通常情况下：
                  normal: {
                  // color: ['#C75258']
                  },
                  // 鼠标悬停时：
                  emphasis: {
                    shadowBlur: 10,
                    shadowOffsetX: 0,
                    shadowColor: 'rgba(0, 0, 0, 0.5)'
                  }
                }
              }
            ]
          }
          this.chartData.forEach(item => {
            option.dataset.source.push(item)
          })
          let myChart = echarts.init(document.getElementById('focusAreaTotal'))
          myChart.setOption(option)
        } else {
          this.$Message.error({
            content: '数据获取失败,\n' + ret.data.errmsg
          })
        }
      })
    }
  }
}
</script>

<style scoped>
  .header {
    height: 30px;
  }

  .icon {
    font-size: 28px;
    font-weight: 600;
    margin-right: 5px;
  }

  .title {
    font-size: 16px;
    font-weight: 600;
    line-height: 30px;
  }
</style>
